This description relates to management of large scale computer networked systems such as in cloud computing.
Cloud computing is a type of computing where large groups of remote servers are networked together to access centralized data storage, computing services and/or resources. Clouds can be classified as public or private and can be used by relatively small users, such as small to mid-size businesses, as well as very large enterprise-scale users, such as large organizations, governments, and so forth. Approaches to cloud computing can differ depending on the size of the organization. One aspect of cloud computing involves management of workflows and response to real time events. For the relatively small user, inexpensive approaches are needed to manage small users' information technology systems. One aspect of management is management of “multi-tenancy” architectures. Multi-tenancy as used herein corresponds to software architectures where a single instance of software executes on a server that serves multiple users, also referred to as “tenants.” A tenant is a group of users that share the same view of the software. In a multi-tenant architecture, the software application is configured such that each tenant has a dedicated share of the instance of the application including application data, configuration, user management, tenant specific functionality and non-functional properties. Multi-tenancy contrasts with multi-instance architectures where separate software instances operate on behalf of different tenants. Multi-tenancy is important in cloud computing.
Tools are known for automating information technology management workflows. For example, it is possible to use open source tools on open source systems such as Apache Hadoop® and Apache Storm® to express workflows. However such systems could be considered complicated to build and maintain with the existing set of open source tools.